byte code :(compiler) .class מהדר בתהליך עורך, סייר, קומפיילר,,JRE וכו'. למשל: אקליפס. נקודות חשובות: חסכון בהקצאת זיכרון.

Size: px
Start display at page:

Download "byte code :(compiler) .class מהדר בתהליך עורך, סייר, קומפיילר,,JRE וכו'. למשל: אקליפס. נקודות חשובות: חסכון בהקצאת זיכרון."

Transcription

1 1 שיעור 1: שלום עולם, תרגול 2: 1, מחרוזות ומערכים: מפרש :(interpreter) מריץ את הקוד שנכתב בשפת.Java חסרונות: מהדר מאט את מהירות הריצה. גילוי שגיאות רק בזמן ריצה. :(cmpiler) מעבד את קוד התוכנית לפורמט נוח יותר הקומפילציה נבדק התחביר ומתגלות שגיאות. byte cde - הנשמר עם סיומת.class בתהליך יבילות :(Prtability) קוד Java חוצה סביבות, כלומר קוד שקומפל יוכל לרוץ על בכל מחשב ובכל סביבה בה מותקן מפרש לשפה. המכונה המדומה JVM) :(Java Virtual Machine מפרש הנכתב עבור כל סביבה (פלטפורמה), ומכאן שה- JVM כן תלוי סביבה. את ה- JVM לא כותב המתכנת. חבילת ערכת פיתוח JVM) :(Java Develpment Kit כוללת,JVM קומפיילר, דיבגר וכו'. סביבת פיתוח שלובה IDE) :(Integrated Develpment Envirnment סביבה המשלבת כלי פיתוח עצמאיים: עורך, סייר, קומפיילר,,JRE וכו'. למשל: אקליפס. נקודות חשובות: עד סוף שורה text // הערה על מספר שורות /* text */ שמות משתמשים אינם חלק מחתימת המתודה. הערות: שלושה סוגי הערות: סוגי טיפוסים: יסודיים (8 סה"כ), טיפוסי הפניה (מחלקות). יתרונות להגדרת טיפוס מראש: הערת תיעוד javadc /** text */ יעילות זמן חישוב (שלמים לעומת עשרוניים). חסכון בהקצאת זיכרון. סוג מגדיר אילו פעולות ניתן לבצע עליו. תהליך ההשמה הוא אימפרטיבי, חישוב נעשה מימין לשמאל. :Char ייצוג ע"י תו בין ' ל-', או ע"י מספר לפי טבלת ה- unicde. 'n\' שורה חדשה, 't\' טאב. המרת טיפוסים :(Casting) בטיחות ההמרה מתייחסת לסוג הטיפוס ולא לערכו. המרה בטוחה נקראת.widening המרה מפורשת casting) (explicit "לקיחת אחריות" על ההמרה גם אם לא בטוחה,.narrwing כל השמה של מספר מהצורה: X.X (עם נקודה צפה) מתפרש כ- duble ולא כ- flat. משפט (statement) מבצע פעולה; ביטוי (expressin) מבנה שניתן לחשב את ערכו. לרוב משפט לא יחזיר ערך, אך יש שכן, למשל ביטוי השמה. השמה: ++x - מחזיר x ולאחר מכן מקדם; x++ מקדם את איקס ומחזיר אותו עם ערכו החדש.

2 2 השמה מתבצעת מימין x=y=z קודם z ל- y, אח"כ y ל- x ; חיבור, חיסור וכו': משמאל לימין. משתני הפניה: משתנים יסודיים תופסים מקום מוגדר מראש ב- stack, ומשתני הפניה מכילים כתובת לזיכרון ב- heap. יצירת מערך באופן: int[5]; int[] arr = new ייאתחל את חמשת אברי המערך ל- 0, בולייני ל- false. אם שתי הפניות מצביעות לאותו עצם, אין עותק נוסף שלו, אלא ההצבעה היא לאותו מקום בזיכרון. המרת מחרוזת לטיפוס יסודי: Integer.parseInt("<number>") (או Flat או כל אחר). שיעור 2: מבני בקרה, תרגול 2: מבני בקרה, תרגול 3: מבני בקרה: לולאות: אופרטור התנאי <f val> <Blean expressin>? <t val> : שונה ממשפט התנאי if בכך שאינו משפיע על זרימת התוכנית. אופרטור התנאי מחזיר ערך כלשהו. Switch מקבל טיפוס שאינו טיפוס מניה וה- case משווים את הערך אליו. עבור כל תנאי שאינו ב- case ניתן בלוק (בד"כ ימוקם אחרון).default כדי שאחרי התקיימות case נצא מהביטוי, יש לשים,break; אחרת נמשיך לבדוק את שאר ה- caseים. d while,while נבדלים בכך שהשני מבצע ריצה אחת של ה- statement לפני בדיקת התנאי. בלולאות ניתן למקם בחלקי האינקמנטיזציה והאיתחול יותר ממשתנה אחד, ע"י הפרדה בפסיקים. בתוך לולאה ניתן להשתמש ב- break לעצירה מוחלטת של הלולאה או cntinue ליציאה מהאיטרציה הנוכחית של הלולאה ומעבר לבאה. שרותי מחלקה methds) :(static קריאה למתודה ממחלקה אחרת מצריכה שם מלא: name> <class name>.<methd העמסת שירותים: ניתן לכתוב פונקציות בעלות אותו שם, כל עוד החתימה שלהן שונה. שונות תהיה בטיפוס ו/או סוגי ומספר הארגומנטים, אך לא בשמות משתנים. יתרונות: נוחות ערכי ברירת מחדל: אפשרות להעמיס מתודה קצרה עם ערכי ברירת מחדל פנימיים, עבור ערכים שחוזרים על עצמם. תאימות לאחור: במידה וכבר יש מתודה ומשתמשים בה גם במחלקות אחרות, לשנות אותה יפגע בקימפול של קוד משתמש, לכן ניתן להעמיס גרסה חדשה של המתודה כנדרש. בעיה: שכפול קוד. הקומפיילר יחליט איזו העמסה לבחור עבור קלט מסויים, ואם אין העמסה מדוייקת יבצע המרה (אם יוכל), ואם יש תאימות לשתי העמסות יחזיר הודעה על אי בהירות. לשכפול מס' כלשהו של ארגומנטים יש פתרון של תחביר: <array name>).<methd>(<type> משתני מחלקה: משתנים גלובליים למחלקה (או: שדות מחלקה) יוגדרו עם :static מוגדרים בכל המחלקה.

3 3 מוגדרים בזיכרון כל עוד המחלקה בשימוש. מאותחלים לפי ערך ברירת מחדל (גם בלי שניתן להם ערך ספציפי). ישבו ב- Heap ולא ב- Stack. משתנה final ניתן לאתחול פעם אחת בלבד, כל השמה אח"כ תזוהה כשגיאת קומפילציה. שגיאות קומפילציה מול שגיאות זמן ריצה: שגיאות הידור: נתפסות בעת ניסיון להפוך קוד ל- bytecde. שגיאות זמן ריצה: שגיאות שלא ניתן לתפוס בעת הידור. שיעור 3: דיני חוזים, תרגול 3: חוזים: מבני בקרה: כדי לקצר ניתן להשתמש ב- imprt : imprt java.util.smeclass מאפשרת שימוש ישיר ב- smeclass. שימוש ב-*. java.util ייתן את כל תתי המחלקות במקום המתאים ל-* אך לא בצורה רקורסיבית, כלומר לא את כל תתי ותתי-תתי וכו' המחלקות שבמקום *. :static imprt מאפשר ייבוא של משתנה של מחלקה / מתודה. גם כאן ניתן להשתמש ב-*. אין צורך לייבא מאותה חבילה, או את.java.lang :CLASSPATH משתנה סביבה המכיל את שמות התיקיות המכילות מחלקות בהן משתמשים. ניתן להוסיף ארכוב מחלקות מפורמט jar ל- classpath. ו- javadc : (Applicatin Prgramming Interface) API ה- javadc יוצר API אוטומטית בפורמט,HTML והיא חלק מה- JDK. עיצוב לפי חוזה: תנאי קדם ותנאי אחר. לא בודקים תנאי קדם! אחרת הם כבר לא תנאי קדם. ניתן להחזיר לאחר ביצוע מתודה תוצאה חזקה מתנאי האחר שהוגדר. משתמר: תנאי שצריך להתקיים לכל אורך ריצת התוכנה, והוא מגדיר את נכונות התוכנה. הוכחת משתמר היא על פי כללי המתמטיקה. נראות פרטית visibility) :(private מאפשר גישה למשתנה רק מתוך המחלקה בה הוגדר. תיחום באמצעות נראות פרטית מכונה הכמסה.(encapsulatin) משתמר הייצוג: משתמר הקשור לייצוג הפנימי של משתמר כלשהו של התוכנית. למשל: getcunter() == #calls fr m() cunter == calls fr m() כאשר הייצוג הפנימי במימוש של הוא משתמר הייצוג /* קיימים משתמרי ייצוג גם עבור תנאי בתר. נראות: כאשר לא מצויינת דרגת נראות private),(public, ברירת המחדל היא.package

4 4 מחלקות: בנאי: פונקצית אתחול המקצה למופע מחלקה (עצם) מקום על ה- Heap. Heap תכיל משתנים גלובלים ועצמים, לא תלוי במתודה הנוכחית שרצה. Stack משתנים מקומיים וארגומנטים. שרותי מופע בניגוד לשרותי מחלקה methds) (static עובדים על עצמים מסויימים. משתני מופע בניגוד למשתני מחלקה fields) (static הם שדות בתוך עצמים ויחודיים להם. שיעור 4: מחלקות ומנשקים, תרגול 4: מחלקות ועצמים: שירותי מחלקה: בנאי: פונקציית האתחול. שירותי מחלקה: מסומנים static שירותי מופע: לעצם ספציפי, גישה עם אופרטור "." סוגי שרותים: שאילתות, פקודות ובנאים. מצב מופשט ופונקצית הפשטה: תיאור הטיפוס בצורה מדויקת, פשטנית ומתמטית. יצירת חוזה המחלקה בהתאם לצורה זו פונקצית ההפשטה: מיפוי אצמים קונקרטים למצב המופשט. בחוזה: בראש המחלקה <abstract תיאור מצב לאחר הפעלת השרות AF(this) == פונקצית ההפשטה אינה חח"ע (שכן הרבה עצמים יכולים להיות באותו מצב מופשט). שימוש במשתמרי ייצוג להוכחת נכונות גם לגבי המצב המופשט. ניראות תיעוד: javadc תומך בדרגות ניראות שונות (למשל private לא יופיע בתיעוד הציבורי). מנשקים: במנשק יוגדר חוזה ומצב מופשט של הטיפוס. יתרונות למנשקים: צמצום תלות בין קוד הלקוח למימוש הטיפוס גמישות לקוד הלקוח. חופש פעולה במימוש הטיפוס. גמישות בשינויים עתידיים במימוש גמישות ליוצר הטיפוס. לא ניתן להגדיר במנשקים בנאים ומתודות סטטיות. שיעור 5: מנשקים, תרגול 5: מחלקות ועצמים חלק ב': תבנית עיצוב :Factry

5 5 עבור מחלקת אם המשתמשת בטיפוס כלשהו, נרצה לצמצם נראות למנשק, אך אם קיימת תלות גם ככה בין מחלקת האם למחלקה המממשת את המנשק, מהמחלקה המממשת. נגדיר מחלקה חדשה Factry שתייצר כל פעם אובייקט מחלקת האם תשתמש במחלקת המפעל לייצור מופעי המנשק, וישנה תלות בין מחלקת המפעל למימוש. אופציה נוספת: שימוש במנשקים: כדי להפחית תלות בין מחלקת האם למחלקה המממשת, נשתמש במחלקת האם רק במופעים של המנשק, כך שלא תהיה גישה לשדות פנימיים או שירותים שלא הוגדרו במנשק. לטיפוס מסוג מנשק ניתן לבצע השמה של כל טיפוס מחלקה המממשת את המנשק, אך לא הפוך. פולימורפיזם (רב צורתיות): לכל מנשק יכולים להיות מספר מימושים, וקוד המשתמש במנשק לא צריך להתחשב במימוש אחד ספציפי, וכך לשירותים המופיעים במנשק צורות רבות הקומפיילר מוודא שלכל מחלקה מממשת מנשק יש את כל השירותים המוצהרים במנשק. הפונקציה המתאימה שתקרא בזמן ריצה נקרא.dynamic dispatch למימושים שונים. התאמת ניתן להגדיר מערכים של טיפוס מסוג מנשק. ריבוי מנשקים: מחלקה יכולה לממש מספר מנשקים: public <class_name> implements,i1,i2 I3 שיעור 6: מחלקות פנימיות, תרגול 6: מבני נתונים מוכללים, תרגול 7: מחרוזות: מחלקות ושירותים גנריים (מוכללים): הוספת <T> בצמוד לשם המחלקה. טיפוס בתוך המחלקה מוגדר כ-< calss_name><t > ניתן להשתמש ב- T כטיפוס גנרי. הטיפוס הקונקרטי חייב להיות מסוג הפנייה, ולא יכול להיות פרמיטיבי (למשל Integer ולא,(int לכן נשתמש בטיפוסים עוטפים: לכל פרמיטיבי קיים טיפוס עוטף והוא,immutable למשל Integer הוא int ב"עטיפה" ולא ניתן לשנות את תוכנו ברגע שנוצר..<var>.<var type>value ע"י (unbxing) קריאת הערך המוחזק בטיפוס עוטף בג'וואה 5 נעשה bxing, unbxing אוטומטי. מחלקות פנימיות (מקוננות classes :(Nested מבנה תחבירי המבטא היכרות אינטימית בין מחלקות. למשל, טיפוס הנועד לצורכי שימוש טיפוס אחר, הראשון ימומש כמחלקה אינטימית בתוך האחר. רמת ניראות דיפולטית היא רמת המחלקה עצמים מאותה מחלקה יכולים לגשת לעצמים אחרים מאותה מחלקה, גם לשדות פרטיים. למחלקה פנימית גישה לשירותי המחלקה העוטפת, ויש לה שדה הפניה אוטומטית לעצם מהמחלקה העוטפת. אם יש שמות משתנים חוזרים, הדיפולטי יהיה של המחלקה הפנימית, וכדי לגשת לזה של המחלקה העוטפת נשתמש בשם מלא:.<uter_class>.<var_name> יצירת מופע של מחלקה פנימית: בתוך המחלקה העוטפת: יצירה רגילה.

6 6 לא בתוך המחלקה העוטפת: יצירה ע"י uterobej.new innerobj לאובייקט פנימי שלא מקושר למופע של האובייקט החיצוני. כיוון שאין משמעות מחלקה פנימית סטטית: מחלקה פנימית שאינה מקושרת למופע של המחלקה החיצונית. קריאה לה ע"י:.uterClassName.InnerClassName אם מחלקה פנימית סטטית אינה,public צריך ליצור לה.getter למשל: מחלקות פנימיות בתוך מתודות: Outer.Inner bj = new Outer.Inner(); errr Outer.Inner bj = new Outer.getInner(); כאשר הגטר הוא ציבורי במחלקה העוטפת k תחום ההיכרות של המחלקה הפנימית רק בטווח המתודה. יכולה להשתמש במשתני המתודה רק אם הם.final ניתן גם ליצור מחלקות פנימיות אנונימיות. קומפילציה של מחלקות פנימיות יניב קובץ נפרד, class אנונימיות: <uter_name>$1.class וכן הלאה (מספור). ששמו,<uter_name>$<inner_name>.class :Iteratr Design Pattern הפשטה של מעבר על מבנה נתונים, מאפשר סריקת מבנה נתונים ללא הכרת המימוש הפנימי. איטרטור הואמנשק שחייב לממש: hasnext() בודק האם הגענו לסוף. next() גם מחזיר את הנתון וגם מקדם. remve() הסרה של נתון (אופציונלי, לרוב ימומש מימוש ריק {}). כל מחלקה שיש לה איטרטור: Iterable<T> implements (אם היא גנרית עם <T>). פונקציית החזרת האיטרטור נראית כך: Public Iteratr<T> iteratr(){ Return new iteratrimplementatin<t>(args);} מקובל להכניס את מחלקת iteratrimplementatin<t> בתור מחלקה פנימית של הטיפוס. Cllectin<E> מממש את,Iterable<E> ו"מממש" היא 75% מ'. :Strings ניתן לבצע fr each על איטרטור. מחרוזת היא,immutable לכן ניתנת להצבעה ע"י יותר ממשתנה אחד. כל המחרוזות השונות נכנסות ל- pl,string שם נמצאות כל עוד מצביעים עליהן..Insert, append ניתן לבצע עליה.mutable סוג של מחרוזת StringBuffer קיים גם,StringBuilder אבל לא נראה לי שזה חשוב. ועבור

7 7 שיעור 8: 7, הורשה, תרגול 7: בנאים, תרגול 8: תבניות הורשה ומימוש: יחסים בין מחלקות: מכלול :(Aggregatin) יחס המבטא הכלה, למשל :cllectin מכיר את רכיביו, אך הם לא מכירים אותו, לרכיבים אפשרות קיום עצמאית ללא היכללות במיכל. הרכבה :(Cmpsitin) הכלה בה לרכיבים אין יכולת קיום ללא המיכל, למשל טיפוסים המוגדרים במחלקה פנימית בתוך טיפוס המיכל (כמו חדרים בבית, שכן לחדר אין קיום לבדו). יחס :(Generalizatin) is a כאשר מחלקה אחת היא סוג של מחלקה אחרת. הורשה: מחלקה יורשת מקבלת את כל תכונות המורישה. ניתן לרשת אך ורק ממחלקה אחת (לעומת מימוש, שכן מחלקה אחת יכולה לממש מספר מנשקים). בנאים לא עוברים בירושה, ומתודות סטטיות לא עושות אובררייד בירושה. אין ניראות שדות.private ממחלקה שתוגדר final לא ניתן יהיה לרשת. ישנה הורשה בין מנשקים. אתחולים ובנאים: כל בנאי של מחלקה שלא יורשת משום מחלקה אחרת, מכילה בנאי (נסתר) של bject כיוון שכל מחלקה מרחיבה את.bject בנאי של מחלקה יורשת יכיל קריאה לבנאי של המחלקה ממנה יורש ע"י קריאה ל-() super המתאימים. הקריאה הנסתרת לבנאי של bject תהיה ריקה. עם הנתונים דריסה: מחלקה יורשת יכולה לדרוס מתודה מהמורישה ע"י שימוש בחתימה זהה. כדי לקרוא למתודה הנדרסת נשתמש ב:.super.methdName בד"כ נוסיף טיפוס סטטי ודינאמי: טיפוס של עצם הוא טיפוס הבנאי לפיו נוצר העצם והוא בלתי ניתן לשינוי ברגע שנוצר. טיפוס סטטי: הטיפוס שמוגדר בהכרזה על ההפניה (מקדם שם המשתנה) יכול להיות מחלקה או מנשק. טיפוס דינאמי: טיפוס העצם המוצבע, והוא נגזרת של הטיפוס הסטטי. למשל: PlarPint של.IPint ניראות :Prtected מאפשרת גישה לאורך שרשרת הירושה, וברמת החבילה (בשפות מונחות עצמים אחרות ניראות זו לא כוללת אחרים גישה מתת-מחלקה גישה מאותה חבילה את רמת החבילה). סיכום ניראות וירושה: גישה מאותה מחלקה לא לא לא כן Private לא אלא אם המחלקה ותת-המחלקה לא, כן כן (default) Package באותה חבילה לא גם אם המחלקה ותת-המחלקה לא כן, כן כן Prtected באותה חבילה כן כן כן כן Public

8 8 למה prtected בהורשה למה private בהורשה מקיים יחס,is a הגיוני שיהיה בעל אותן זכויות הסתרת המימוש לשמירה על שלמות המידע גם מצאצאים היורש מכיל בתוכו את המוריש, לכן צריך גישה פשוטה יורש עלול לשבור חוזה מוריש, ולשבור את התוכנה אצל הלקוח ונוחה יורש הוא סוג של לקוח, עיקרון הסתרת המידע צריך לחול עליו :Clne, deep_clne Clne יוצר מצביע אל אותו אובייקט. יוצר אובייקט חדש עם שדות חדשים, אך השדות החדשים מצביעים על אותם אובייקטים deep_clne שהשדות הישנים מצביעים (כלומר לא deep_clne רקורסיבי). :abstract class - מחלקה מופשטת :Template methd design pattern לא חייבים לממש מתודות נורשות, ניתן ליצור חתימות של מתודות חדשות בלי מימוש. tp מתודות ממומשות נקראות אלגוריתם כללי, אינן תלויות במימוש הסופי החלפת (כמו במחסנית צריכה להשתמש ב- tp,push, מבלי לדעת כיצד ממומשות)..callbacks או hks מתודות אבסטרקטיות המועברות הלאה נקראות לא ניתן ליצור מופע של מחלקה מופשטת. נועדה למנוע שכפול קוד. אפשר לוותר על הצהרות שמתקבלות מהמנשק ולא ממומשות. המחלקה המופשטת באה לחסוך לספק, לנו, ואילו מנשק ללקוח. Extract superclass אקליפס מאפשר שכתוב מבני (refactring) הנקרא ליצירת מח' אבסט' המאחדת מספר מחלקות יורשות, ומאחדת אוטומטית את הקוד שניתן לאחד. :Adapter Design Pattern תיאום בין מנשק למחלקה שלא מממשת אותו, ע"י מחלקת תיאום. במחלקת התיאום יהיה שדה: <class name, e.g: java.util.randm> <var name, e.g: r>; המחלקה תורכב ממתודות מימוש המנשק, תוך התאמה בין r לנדרש. ניתן לעשות זאת על יותר ממחלקה אחת. :Bridge Design Pattern פתרון לבעיית צורך בירושה מרובה ע"י שימוש בהכלה עם האצלה. למשל, ניצור שני מנשקים לטיפוס, כאשר מחלקה המממשת את הראשון תקבל כשדה (בבנאי) מופע של מימוש המנשק השני, ועל מימושו תוסיף לוגיקה כלשהי (דוגמא במצגת: מחסנית הממומשת ע"י LastMdifiedStack לוגיקה של שמירת שדה תאריך שינוי אחרון, המקבלת בבנאי מופע של מימוש ArrayList של מחסנית לוגיקה מקבילה שאינה מתנגשת עם הראשונה).

9 9 טיפוסי זמן ריצה: בשל הפולימורפיזם, טיפוס כללי: לא ידוע הטיפוס המדויק של עצם, כלומר הטיפוס הדינמי, שניתנות לטיפוסים דינמיים ספציפים. בשביל לפתוח אפשרויות אלו נשתמש ב- casting. סוגי המרות: :Dwncast המרה למטה, בפציפיקציה של הטיפוס. יכול להוות בעיה. :Upcast המרה למעלה למחלקה או מנשק, לא מהווה בעיה (פשוט מאבד מידע). המרה תתבצע כמו בטיפוסים פרמיטיביים: <Expressin> (Type t cast int) בדיקות טרום- casting : מתודת getclass() מחזירה את המחלקה של הטיפוס. למשל הבדיקה: shape.getclass() == Plygn.class וכך נחסמות אפשרויות (shape instancef Plygn) :Instancef בודק האם העצם הנבדק הוא יורש מהטיפוס, או מממש את הטיפוס או מסוג הטיפוס עצמו. ברגע שנוצר טיפוס ספציפי מסוג טיפוס כללי, למשל FCStack<String> אינו סוג של.FCStack<Object> הערות חשובות: אם יצרנו טיפוס כללי, והשמנו בו טיפוס ספציפי, למשל מערך של bject שהכנסנו אליו מערך של,String אם נמלא אותו בערכים שאינם String יעבור קימפול אך ייזרק בזמן ריצה. כמו כן לא ניתן ליצור מערכים של טיפוס גנרי (טעות קומפילציה), אך כן ניתן לעשות casting למערך מטיפוס גנרי. טיפוס נא: אם ישנו טיפוס,smeType<T> ניתן ליצור ממנו טיפוס נא: :בלי לציין את הסוג, שקול ל הסוג הוא הגבול העליון מבחינת טיפוסים, לרוב אובג'קט smetype var = new smetype() smetype<?> var = new smetype<object> במקרה זה כן ניתן לבצע השמה (כן מתקמפל ועלול ליפול בריצה) של הטיפוס הנא לטיפוס ספציפי. השמת גבול לטיפוס כללי: Cmparable> - public class smeclass<t extends למשל, מגביל את T לקבל טיפוסים שמממשים.Cmparable בזמן ריצה אין זכר לפרמטר הטיפוס הכללי, ולכן לא ניתן לקרוא לבנאי לפי הפרמטר הכללי. כדי לכתוב שירות המקבל פרמטר כללי, לא נוכל להשתמש ב-< Object >, כי כפי שנאמר לעיל, נקבל שגיאת זמן ריצה בניסיון השמה של כל מה שאינו בדיוק.Object לצורך כך נשתמש בג'וקר: כך המתודה מוגדרת לקבל כל מיני טיפוסים עם מכנה משותף כלשהו limit)>?> Extends (upper השמת חסם תחתון לטיפוס המתקבל limit)>?> Super (lwer

10 10 ירושה וחוזים: שמורת כל מחלקה צריכה להיות שווה/חזקה משמורת מחלקת הבסיס/המנשק ממנה יורשת/אותו מממשת. תנאים אפקטיבים: מכלול התנאים לאורך עץ הירושה. בכל שלב יוגדרו בחוזה התנאים החדשים בלבד. השמורה האפקטיבית: היא שמורה המורכבת משמורות כל המחלקות בשרשרת הירושה המקושרות ע"י AND (שכן שמורות כל המחלקות בדרך צריכות להתקיים). מהגיון זה, אם בדרך למחלקה כלשהי אין שמורה, ינתן לה ערך ברירת מחדל אמת. תנאי קדם אפקטיבי: תנאי קדם של מחלקה יורכב מ- OR של כל תנאי הקדם של הוריה, שכן החזק מתנאי הקדם יהיה של מחלקת הבסיס (כי לא יכול להיות שמחלקה בשרשרת תצמצם את טווח הפעולה של הוריה, תנאי הקדם שלה יהיה שווה / חלש משל הוריה). מהיגיון זה, אם למחלקה בדרך אין תנאי קדם, כדי שלא תתרום דבר ל- OR, ינתן לה ערך ברירת מחדל שקר. תנאי אחר אפקטיבי: שרשרת AND של תנאי האחר של שרשרת המחלקות בדרך, כאשר ברירת מחדל למחלקה בלי תנאי אחר הוא ערך אמת (שכן במורד עץ הירושה תנאי האחר נשמר או מתחזק). עוד חוקים: במורד עץ ירושה למתודה דורסת מותר להרחיב נראות אך לא לצמצמה. במורד העץ מותר למתודה דורסת לצמצם את טיפוס הערך המוחזר אך לא להרחיבו. תנאי קדם מופשט: תנאי קדם של מתודות אבסטרקטיות או שנדרסו; הוא נשאר ללא שינוי, גם אם תנאי הקדם הקונקרטי שונה ממנו. סיכום: ירושה צריכה לקיים שני תנאים: יחס is a ועקרון ההחלפה. שיעור 9: חריגים: Exceptin תנאים העשויים להתקיים במהלך ריצה תקין, מקרי קצה. מיוצג ע"י :Checked exceptins,errr בעיות חמורות היוצגות ע"י או באג בתוכנית המיוצג ע"י :Unchecked exceptins.runtimeexceptin כל הנ"ל הם טיפוסים שמרחיבים את,Thrwable ובחתימת המתודה נוסיף: thrws <list f exceptins> לעתים נרצה להגדיר תנאי קדם חלש, מהסיבות הנ"ל: חוסר שליטה: חוסר שליטה בגלל בו זמניות: למשל גישה לקובץ, שמרגע בדיקת קיומו עד הפעלת הפעולה עליו הוא עלול להימחק (לכן צריך לתת תנאי קדם חלש יותר, שכן תנאי הקדם שאף פעולה לא תיעשה על הקובץ היא בעייתית). חוסר שליטה בגלל פרוטוקולים: העצם מושפע מפרוטוקול (מהעולם החיצון) ולכן מאבדים שליטה. קושי לבדוק את התנאי: לפעמים בדיקת התנאי עבור הלקוח תיקח כאורך ביצוע המתודה, וכבר לא שווה להריץ אותה... לכן נדרש לתנאי קדם חלש יותר.

11 11 תנאי צד: במקום תנאי קדם, מוכנס תנאי צד: שבמידה וחל לא מוחזר הערך לפי תנאי האחר, אלא נזרק חריג. בלוק :try catch את הקוד הבעייתי נעטוף בבלוק try ואם יזרק חריג, יתפס באחד מבלוקי ה- catch בהתאם ל- exceptin המתקבל. חיפוש handler יתבצע החוצה עד.main אם יש כמה בלוקי catch מתאימים, יתבצע הראשון מביניהם בסדר ההופעה בקוד. בלוק :finally אם נזרק תנאי צד, חובה לבדוק שהמשתמר מתקיים, במידה ושונה בדרך. בלוק ה- finally יחזיק את מה שיתקיים בכל מקרה אחרי ה- try catch. חוזה לא חייב להגדיר את תנאי הצד, אך רצוי. בהצהרת thrws אין חובה להצהיר על unchecked Exceptins כיוון שאלו בעיות חמורות בסביבה/בתוכנית, ואין משמעות לאחר שקרו לקיום המשתמר שכן התוכנית צריכה להיעצר. יצירת חריגים חדשים: הורשה: חריגים הם אובייקטים היורשים מ- Thrwable או צאצאיו. סיבות שחריגים הם עצמים: שניתן יהיה להחזיר בתוכו מידע שיכול להועיל לתיקון הבעיה. שנוכל להודיע למשתמש על החריג. שיכיל מידע שיאפשר התאוששות (נדיר). כל חריג יכיל מינימום: בנאי ריק, בנאי שמקבל מחרוזת, ומתודת getmessage המחזירה מחרוזת. לכל מחלקה יורשת / מתודה דורסת אסור להרחיב את החריגים הנזרקים, אך כמובן שמותר לצמצם את מספרם או לזרוק חריגים היורשים מהחריגים שירשה, כלומר להקל בסה"כ על הלקוח. תרגול :9 :I/O זרמים: זרם הוא כמו צינור להעברת מידע. כל זרם נפתח אוטומטית ברגע שנוצר. יש זרמי קריאה וכתיבה: קריאה: InputStream לקריאת בתים, Reader לקריאת תווים..Writer,OutputStream כתיבה: כל הנ"ל הן מחלקות אבסטרקטיות. זרמים סטנדרטים לקלט,InputStream פלט ושגיאות System.in, System.ut, System.err.(PrintStream) מקבלים בבנאי זרם ומוסיפים עליו אופציות. Scanner למשל מחלקת זרם ל- tkens Wrappers ומאפשרת להוציא את ה- int הבא, ה- char הבא, שורה וכו'. ניתן לשנות לה.delimiter מחלקה :File אין מה לכתוב את כל הפקודות. :Object serializatin Object serializatin מאפשר שמירת וקריאת אובייקטים מזרם בתים. מנשק Serializable מנשק ריק, רוב המחלקות הן,Serializable ותתי מחלקות של מחלקות Serializable הן גם כאלו.

12 12 שיעור :10,GUI תרגול :10 :GUI כל דבר ב- GUI הוא.widget עצמים ודברים חשובים: Display מייצג את המסך. Shell עצמים של חלונות, ההורה הוא המסך. Event lp לולאה הרצה וממתינה לפקודות. יש לשחרר משאבים גרפיים בסוף שימוש, כגון.display במתודת יצירת ה- shell נגדיר: ניצור אובייקט מסוג,Shell נגדיר את הכותרת שלו. Shell.setLayut הגדרת סוג התבנית: עמודות, שורות....setLayutData ע"י Layut לו גם נגדיר לכל אובייקט שניצור ונשים ב- shell, מאזינים: לכל רכיב ניתן להוסיף מאזין ע"י מחלקות אנונימיות pattern),(bserver design דוגמא: adapters מוסיף מאזין ללחיצה על הכפתור Buttn.addSelectinListener( - מחלקות שיודעות כאשר האירוע לו מאזינים קרה, אך לא SelectinAdapter(){ new מבצעות כלום. מהם אנחנו נירש ונדרוס את המתודה.widgetSelected }); Public vid widgetselect(selectinevent e){ } <d smething> כאשר קורה אירוע, כל מאזין נודע על כך, ומשחרר את האדפטר המוגדר. יכולים להיות כמה מאזינים לאירוע. ניתן גם להשתמש במאזין לא ספציפי Listener() new ובמחלקה האנונימית תהיה המתודה (e public vid handleevent(event שתבצע משהו (עבור כל event שתקבל). הערה: ניתן לממש מאזינים גם בדרכים אחרות, כגון מחלקה יורשת מאובייקט שתממש,listener או הכלה של כפתור במחלקה נפרדת (האצלה), או מחלקה פנימית שאינה אנונימית. פורש את ה- shell. shell.pack פותח את ה- shell. shell.pen פריסה: פריסה מתבצעת מלמעלה למטה, כלומר פריסת עצמים בתוך אובייקט תתבצע לאחר שגודל האובייקט נקבע. :Cmpsites מאפשרים מודולריות של פריסה.

13 13 שיעור 11: מקביליות ורשתות: תקשורת בין מחשבים: פרוטוקול תקשורת: מתאר את תחלופת המידע בין מחשבים. המידע אינו תלוי שפת התכנות בה נכתבו התוכניות המדברות באמצעות פרוטוקול, וישנם תקנים סטנדרטיים לפרוטוקלים (ציבוריים). לכל מחשב מחובר לאינטרנט כתובת אפשרויות לשלוחה -.Prt 4) IP מספרים 256 X אפשרויות), ולכל תוכנית הרצה יש 65,536 תקשורת למחשב תיעשה ע"י פניה לכתובתו עם הודעה מתאימה לפי הפרוטוקול. תקשורת ב- Java : שימוש במחלקה Scket (שקע) לתקשורת עם תוכנית מחשב אחרת. שליחת מחרוזת בין מחשבים: Client יצירת שקע תקשורת 7); Scket(" Scket s = new PrintWriter ut = new PrintWriter( s.getoutputstream(), true); הדפסת זרם לשקע התקשורת there!"); ut.println("hell Server יצירת שקע תקשורת ServerScket; ServerScket s = new ממתין לקבלת מידע s.accept(); Scket clientscket = BufferedReader in = new BufferedReader( קריאת הזרם ( InputStreamReader new clientscket.getinputstream())); שמירה במחרוזת in.readline; String input = תכנות מרובה חוטים :(Threads) חוטים ב- Java הם אובייקט מסוג.Thread חוט מריץ מתודה עם חתימה קבועה: run(),public vid פרט לראשי המריץ את main() מחלקה המממשת את run() מממשת את.Runnable.Runnable הוא עצם שהועבר אליו מופע של מחלקה המממשת את Thread מספר חוטים יכולים לרוץ על אותו אובייקט במקביל, ולחלוק מידע. חסרונות לשימוש ב- sckets : פרוטוקול לא סטנדרטי: היישום מגדיר פרוטוקול משלו, וכדי להשתמש בתוכנית לקוחות יצטרכו להתקין clients שלה. דפדפנים: הטכנולוגיה תופסת חלק נכבד מהקוד: לעומת הלוגיקה העסקית (התופסת חלק קטן בקוד). דפדפנים מחלקים את ה- URL שהוכנס לחמישה חלקים: Prtcl ברירת המחדל. Hst /<path>/index.html - File.http ברירת המחדל של 80 :Prt

14 14 עבודה עם פרוטוקול http ב- Java : שימוש במחלקות הנקראות servlets המממשות לוגיקות עסקיות אותן נטען לשרת - ה- cntainer.web השרותון הנשלח מקבל את כל מה שצריך מהשרת, עליו לממש רק את dget שהוא.hk כתיבת שרותון: <servlet_name> extends HttpServelt בנאי ריק HttpServletRequest, HttpServletRespnse המקבלת dget לפונקצית Override השרותונים הם סינגלטון, לכן אם כמה לקוחות ניגשים לאותו שירותון, הם מופנים לאותו עצם בזיכרון. פעולות השרת :HttpServer יצירת שקע והמתנה ללקוחות. עבור כל הודעה חדשה שמקבל: קרא שורה ראשונה בהודעה. :GET אם זו הודעת ניתוח המחרוזת לחילוץ שם השרותון המבוקש עם שמות המשתנים וערכיהם. קבל הפניה לשרותון המתאים. צור את מחלקות העזר Respnse).(Request, אם השרותון נמצא, קרא ל- dget על השרותון ומחלקות העזר, אחרת הצג שגיאה. תרגול :11 Types :Enumerated טיפוסי מניה הם טיפוסים קבועים ברי מניה (כמו למשל קלפים: עלה, תלתן, לב, ויהלום). מבנה הטיפוס: public enum Suit{ SPADES, HEARTS, DIAMONDS, CLUBS } ואז ניתן לבצע על טיפוס ממחלקה זו.switch כמו כן ניתן להוסיף בנאי למחלקה שיקבל כמחרוזת את שם המחלקה, וניתן להוסיף לכל סוג שם, למשל:.SPADES("Spades") טיפוס EnumMap,EnumSet כל ערכי הקבוצה באים מ- enum קיים. מאפשר ליצור קבוצה המחזיקה יותר מסוג אחד מה- enum, כלומר יותר מתכונה אחת (כמו צורות היכולות להיות בו"ז: עגולה, מלאה וכו') הייצוג הפנימי הוא בביטים (יעיל). למשל: types>) Set<smeEnumType> s = EnumSet.f(smeEnumType.type1, <sme mre או: EnumSet.allOf(smeEnumType.class) Set<smeEnumType> s = יכיל את כל הסוגים. EnumMap עובד בצורה דומה.

ASP.Net MVC + Entity Framework Code First.

ASP.Net MVC + Entity Framework Code First. ASP.Net MVC + Entity Framework Code First 1 הקדמה בפרק הזה יוצג שימוש בFirst EntityFramework Code עבור ה use case הבאים : ASP.Net MVC ASP.Net Web API ASP.Net MVC + Scaffolding הערה : Framework Entity הוצג

More information

טכנולוגיית WPF מספקת למפתחים מודל תכנות מאוחד לחוויית בניית יישומיי

טכנולוגיית WPF מספקת למפתחים מודל תכנות מאוחד לחוויית בניית יישומיי WPF-Windows Presentation Foundation Windows WPF טכנולוגיית WPF מספקת למפתחים מודל תכנות מאוחד לחוויית בניית יישומיי Client חכמים המשלב ממשקי משתמש,תקשורת ומסמכים. מטרת התרגיל : ביצוע אנימציה לאליפסה ברגע

More information

תצוגת LCD חיבור התצוגה לבקר. (Liquid Crystal Display) המערכת.

תצוגת LCD חיבור התצוגה לבקר. (Liquid Crystal Display) המערכת. 1 (Liquid Crystal Display) תצוגת LCD בפרויקט ישנה אפשרות לראות את כל הנתונים על גבי תצוגת ה- LCD באופן ברור ונוח. תצוגה זו היא בעלת 2 שורות של מידע בעלות 16 תווים כל אחת. המשתמש יכול לראות על גבי ה- LCD

More information

תוכנה 1 בשפת Java שיעור מספר 8: "ירושה נכונה" בית הספר למדעי המחשב אוניברסיטת תל אביב

תוכנה 1 בשפת Java שיעור מספר 8: ירושה נכונה בית הספר למדעי המחשב אוניברסיטת תל אביב שיעור מספר 8: "ירושה נכונה" )II )הורשה בית הספר למדעי המחשב היום בשיעור חזרה על איטרטורים מחלקות מופשטות טיפוסי זמן ריצה 2 איטרטורים - תזכורת 3 מדוע יש צורך בשני מנשקים? המנשק Iterable מתאר את האובייקט

More information

מבוא לתכנות ב- JAVA תרגול 7

מבוא לתכנות ב- JAVA תרגול 7 מבוא לתכנות ב- JAVA תרגול 7 שאלה )מועד א 2013( לפניך מספר הגדרות: תת מילה של המילה word הינה רצף של אותיות עוקבות של word פלינדרום באורך le היא מילה בעלת le אותיות שניתן לקרוא אותה משמאל לימין וגם מימין

More information

קשירות.s,t V שני צמתים,G=(V,E) קלט: גרף מכוון מ- s t ל- t ; אחרת.0 אם יש מסלול מכוון פלט: הערה: הגרף נתון בייצוג של רשימות סמיכות.

קשירות.s,t V שני צמתים,G=(V,E) קלט: גרף מכוון מ- s t ל- t ; אחרת.0 אם יש מסלול מכוון פלט: הערה: הגרף נתון בייצוג של רשימות סמיכות. סריקה לרוחב פרק 3 ב- Kleinberg/Tardos קשירות.s,t V שני צמתים,G=(V,E) קלט: גרף מכוון מ- s t ל- t ; אחרת.0 אם יש מסלול מכוון פלט: הערה: הגרף נתון בייצוג של רשימות סמיכות. קשירות.s,t V שני צמתים,G=(V,E) קלט:

More information

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0 מבוא לתכנות - פיתוח משחקים ב Action Script 3.0 כל מה שמעצב משחקים צריך לדעת בשביל לעבוד עם מתכנתים משחק בול פגיעה שעור 2 1P 0 AS3 2P 0 HIGH SCORE RANK SCORE NAME CREDIT 15 1ST 00045000 I.M 2ND 00039500

More information

מספר ת"ז: יש לסמן את התשובה הטובה ביותר בתשובון. לא יינתן ניקוד על סימון תשובה בטופס הבחינה או במחברת הבחינה.

מספר תז: יש לסמן את התשובה הטובה ביותר בתשובון. לא יינתן ניקוד על סימון תשובה בטופס הבחינה או במחברת הבחינה. עמוד 1 עמוד 1 מתוך 11, בחינה בתוכנה 1 מספר סידורי: מספר ת"ז: סמסטר א' תשע"ז, מועד א', 11 בפברואר 117 ליאור וולף, תומר עזרא, לנה דנקין משך הבחינה שלוש שעות יש להניח שהקוד שמופיע במבחן מתאים לגירסה 7 של

More information

פולימורפיזם. blog.csit.org.il מדעי המחשב

פולימורפיזם. blog.csit.org.il מדעי המחשב 1 פולימורפיזם להסתכל על אותו אובייקט בצורות שונות. אובייקט של תת-מחלקה )המחלקה הנגזרת( הוא גם אובייקט של מחלקת העל )מחלקת הבסיס( )כלב הוא גם בעל-חיים וגם יונק(. פולימורפיזם מאפשר להשיג שתי מטרות: לטפל

More information

ניפוי שגיאות )Debug( מאת ישראל אברמוביץ

ניפוי שגיאות )Debug( מאת ישראל אברמוביץ ניפוי שגיאות )Debug( מאת ישראל אברמוביץ בדף העבודה יש תירגול בסביבת העבודה לשפת #C לסביבות עבודה אחרות. )2015 )Visual Studio אך היא מתאימה גם לשפת Java וגם o 1. ריצה של כל התוכנית ועצירה בסוף יש לבחור

More information

המבנה הגאומטרי של מידה

המבנה הגאומטרי של מידה התוכנה מאפשרת לרשום מידות מסוגים שונים בסרטוט, במגוון סגנונות ובהתאם לתקנים המקובלים. רצוי לבצע מתן מידות בשכבה המיועדת לכך. לכל מידה יש תכונות של בלוק. תהליך מתן המידות מתחיל תמיד מקביעת סגנון המידות.

More information

מטוסים נופלים, כורים מתפוצצים זיכרון אוטומטי מקטסטרופות לומדים בניינים קורסים,

מטוסים נופלים, כורים מתפוצצים זיכרון אוטומטי מקטסטרופות לומדים בניינים קורסים, 2 חלק עצמים ומחלקות בהנדסה קורות לעיתים קטסטרופות: מטוסים נופלים, כורים מתפוצצים בניינים קורסים, מקטסטרופות לומדים בעולם המחשבים, רוב הקטסטרופות התבטאו בכישלון לפתח תוכנה גדולה או בכישלון להשמיש תוכנה

More information

מבוא למחשב בשפת פייתון

מבוא למחשב בשפת פייתון 234221 מבוא למחשב בשפת פייתון 3 מבני בקרה ולולאות פרופ' ראובן בר-יהודה דין לייטרסדורף הפקולטה למדעי המחשב הטכניון מכון טכנולוגי לישראל נערך ע"י יעל ארז 1 פקודות והזחות 2 פקודה פשוטה >>> 3+2 5 >>> x = 5

More information

עץ תורשה מוגדר כך:שורש או שורש ושני בנים שכל אחד מהם עץ תורשה,כך שערך השורש גדול או שווה לסכום הנכדים(נכד-הוא רק בן של בן) נתון העץ הבא:

עץ תורשה מוגדר כך:שורש או שורש ושני בנים שכל אחד מהם עץ תורשה,כך שערך השורש גדול או שווה לסכום הנכדים(נכד-הוא רק בן של בן) נתון העץ הבא: שאלה 1 עץ תורשה מוגדר כך:שורש או שורש ושני בנים שכל אחד מהם עץ תורשה,כך שערך השורש גדול או שווה לסכום הנכדים(נכד-הוא רק בן של בן) נתון העץ הבא: 99 80 50 15 40 34 30 22 10 13 20 13 9 8 א. ב. ג. האם העץ

More information

שיעור מספר 6: מקושרים

שיעור מספר 6: מקושרים שיעור מספר 6: מקושרים וולף ליאור בית הספר למדעי המחשב על סדר היום נתחיל בדוגמא נאיבית של מבנה מקושר נכליל את המבנה ע"י הכללת טיפוסים נדון בייצוג הכרות אינטימית בשפת התכנות נדון בהפשטת מעבר סידרתי על נתונים

More information

Practical Session No. 13 Amortized Analysis, Union/Find

Practical Session No. 13 Amortized Analysis, Union/Find Practical Session No. 13 Amortized Analysis, Union/Find Amortized Analysis Refers to finding the average running time per operation, over a worst-case sequence of operations. Amortized analysis differs

More information

מכונת מצבים סופית תרגול מס' 4. Moshe Malka & Ben lee Volk

מכונת מצבים סופית תרגול מס' 4. Moshe Malka & Ben lee Volk מכונת מצבים סופית תרגול מס' 4 1 מכונת מצבים סופית Finite State Machine (FSM) מודל למערכת ספרתית מכונת מצבים סופית: קלט: סדרה אינסופית של אותיות...,I3,I1,I2 בא"ב input out פלט: סדרה אינסופית של אותיות O

More information

Rules Game (through lesson 30) by Nancy Decker Preparation: 1. Each rule board is immediately followed by at least three cards containing examples of

Rules Game (through lesson 30) by Nancy Decker Preparation: 1. Each rule board is immediately followed by at least three cards containing examples of Rules Game (through lesson 30) by Nancy Decker Preparation: 1. Each rule board is immediately followed by at least three cards containing examples of the rule. (Choose three cards appropriate to the lesson

More information

DNS פרק 4 ג' ברק גונן מבוסס על ספר הלימוד "רשתות מחשבים" עומר רוזנבוים 1

DNS פרק 4 ג' ברק גונן מבוסס על ספר הלימוד רשתות מחשבים עומר רוזנבוים 1 DNS פרק 4 ג' שכבת האפליקציה, פרוטוקול ברק גונן מבוסס על ספר הלימוד "רשתות מחשבים" עומר רוזנבוים מאת 1 בסיום הפרק נדע: מה תפקיד פרוטוקול?DNS לשם מה צריך?DNS מהי ההיררכיה של כתובות דפי האינטרנט? מהו,TLD

More information

Patents Basics. Yehuda Binder. (For copies contact:

Patents Basics. Yehuda Binder. (For copies contact: Patents Basics Yehuda Binder (For copies contact: elissa@openu.ac.il) 1 Intellectual Property Value 2 Intellectual Property Rights Trademarks Copyrights Trade Secrets Patents 3 Trademarks Identify a source

More information

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0 מבוא לתכנות - פיתוח משחקים ב Action Script 3.0 כל מה שמעצב משחקים צריך לדעת בשביל לעבוד עם מתכנתים משחק טקסט שעור 3 1P 0 AS3 2P 0 HIGH SCORE RANK SCORE NAME CREDI 15 1S 00079000 G. 2ND 00079000 S.G 3RD

More information

תרגול 01: ממשקים והורשה

תרגול 01: ממשקים והורשה היום בתרגול ממשקים כללים בסיסיים o מימוש מספר ממשקים o דוגמת ממשק כחוזה o הורשה כללים בסיסיים o דריסה o instanceof אופרטור o תרגול 01: ממשקים והורשה interfaces ממשקים - כללי: הממשק אינו מחלקה, הוא מייצג

More information

הבסיס כתיבת התכנית הראשונה שימוש במשתנים. הטיפוס הבסיסי object. הטיפוס הבסיסי string משפטי בקרה. שימוש ב- Enumerations. שימוש ב- Namespaces

הבסיס כתיבת התכנית הראשונה שימוש במשתנים. הטיפוס הבסיסי object. הטיפוס הבסיסי string משפטי בקרה. שימוש ב- Enumerations. שימוש ב- Namespaces 1 הבסיס כתיבת התכנית הראשונה שימוש במשתנים הטיפוס הבסיסי object הטיפוס הבסיסי string משפטי בקרה שימוש ב- Enumerations שימוש ב- Namespaces המתודה Main כתיבת הערות פקודות קדם מהדר 2 כתיבת התכנית הראשונה

More information

המחלקה למדעי המחשב, אוניברסיטת בן גוריון מבני נתונים, סמסטר אביב 2102 עבודת בית מספר - 2 מעשית

המחלקה למדעי המחשב, אוניברסיטת בן גוריון מבני נתונים, סמסטר אביב 2102 עבודת בית מספר - 2 מעשית המחלקה למדעי המחשב, אוניברסיטת בן גוריון מבני נתונים, סמסטר אביב 2102 עבודת בית מספר - 2 מעשית נושאים: מערכים, רשימות מרצה ומתרגלים אחראים: איתן בכמט, איסנה וקסלר, רז ניסים תאריך פרסום: 11.21 תאריך הגשה:

More information

דיאגרמה לתיאור Classes

דיאגרמה לתיאור Classes 1 דיאגרמה לתיאור Classes הקדמה לדיאגרמת Classes כללים במתן שמות ל- Classes שאנו מתארים הרשאות גישה של מרכיבי ה- Class השונים משתנים (Attributes) שמוגדרים ב- Class משתנים סטטיים Attributes) (Static מתודות

More information

שיעור מספר 7: מקושרים

שיעור מספר 7: מקושרים שיעור מספר 7: מקושרים אוהד ברזילי דן הלפרין בית הספר למדעי המחשב על סדר היום נתחיל בדוגמא נאיבית של מבנה מקושר נכליל את המבנה ע"י הכללת טיפוסים נדון בייצוג הכרות אינטימית בשפת התכנות נדון בהפשטת מעבר סידרתי

More information

State Pattern מימוש מכונת מצבים (FSM) מבוא בעיה תמיכה ועדכונים עדכון מס' 48 מאי 2002

State Pattern מימוש מכונת מצבים (FSM) מבוא בעיה תמיכה ועדכונים עדכון מס' 48 מאי 2002 1 מרכז ההדרכה 2000 תמיכה ועדכונים עדכון מס' 48 מאי 2002 מימוש מכונת מצבים (FSM) באמצעות State Pattern מבוא מכונת מצבים סופית Machine) (Final State היא מודל מקובל בניתוח מערכות באופן כללי, ומערכות חומרה

More information

כפתור רדיו בחירה בודדת מתוך רשימת אפשרויות

כפתור רדיו בחירה בודדת מתוך רשימת אפשרויות תכנות בסביבת האינטרנט 1 כפתור רדיו בחירה בודדת מתוך רשימת אפשרויות כפתור רדיו משמש למקרים שבהם יש לבחור באפשרות אחת מתוך רשימת האפשרויות שבקבוצה. למשל: שאלון רב-ברירות )שאלון אמריקאי( שבו יש רק תשובה אחת

More information

סמסטר אביב 2015, מועד ב' סמסטר קיץ 2015, מועד א' מתרגלים: אביב - נורית מושקוביץ', הלאל עאסי, אלירן וייס; קיץ מאיה דיאמנט

סמסטר אביב 2015, מועד ב' סמסטר קיץ 2015, מועד א' מתרגלים: אביב - נורית מושקוביץ', הלאל עאסי, אלירן וייס; קיץ מאיה דיאמנט יום חמישי, 17 לספטמבר 2015 מבחן סוף סמסטר - תכנות מונחה עצמים )236703( סמסטר סמסטר מרצים: אביב - ערן גלעד; קיץ - פרופ' יוסי גיל מתרגלים: אביב - נורית מושקוביץ', הלאל עאסי, אלירן וייס; קיץ מאיה דיאמנט הנחיות:

More information

תרגול 8. Hash Tables

תרגול 8. Hash Tables תרגול Hash Tables ds-ps חידה מהשיעור הקודם בכל השקים המטבעות שוקלים ורק בשק אחד המטבעות שוקלים.. מותר לנו לבצע שקילה אחת בלבד! איך נדע מה השק הקל יותר? שקים עם מטבעות ds-ps מה היה לנו דיברנו על מבני נתונים

More information

Hebrew Ulpan HEB Young Judaea Year Course in Israel American Jewish University College Initiative

Hebrew Ulpan HEB Young Judaea Year Course in Israel American Jewish University College Initiative Hebrew Ulpan HEB 011-031 Young Judaea Year Course in Israel American Jewish University College Initiative Course Description Hebrew is not only the Sacred Language of the Jewish people, but it is also

More information

תוכנה 1 בשפת Java "יוצא מן הכלל" שיעור מספר 9: שחר מעוז בית הספר למדעי המחשב אוניברסיטת תל אביב

תוכנה 1 בשפת Java יוצא מן הכלל שיעור מספר 9: שחר מעוז בית הספר למדעי המחשב אוניברסיטת תל אביב שיעור מספר 9: "יוצא מן הכלל" שחר מעוז בית הספר למדעי המחשב היום בשיעור חריגים )Exceptions( מבטאים מצבים יוצאי דופן, מקרי קצה ומצבים בלתי צפויים בריצת התוכנית כגון: ארגומנטים שאינם חוקיים, בעיות ברשת התקשורת,

More information

תרגול מספר 9: בנאים, שיטות של אובייקטים והכמסה מבוא למדעי המחשב - סמסטר א' תשע"א,תרגול מס' 9. נושאי התרגול: this

תרגול מספר 9: בנאים, שיטות של אובייקטים והכמסה מבוא למדעי המחשב - סמסטר א' תשעא,תרגול מס' 9. נושאי התרגול: this תרגול מספר 9: בנאים, שיטות של אובייקטים והכמסה נושאי התרגול: this Shallow Copy, Deep Copy )Encapsulation( הכמסה )visibility modifiers( הגבלת גישה Setters ו- Getters )Exceptions( חריגות בתרגול הקודם הכרנו

More information

סה"כ נקודות סה"כ 31 נקודות סה"כ 21 תוכן עניינים של פתרון המבחן. לולאת for )נתון אלגוריתם... מעקב, פלט

סהכ נקודות סהכ 31 נקודות סהכ 21 תוכן עניינים של פתרון המבחן. לולאת for )נתון אלגוריתם... מעקב, פלט מבחן 0220 פרטים כלליים מועד הבחינה: בכל זמן מספר השאלון: 1 משך הבחינה: 3 שעות חומר עזר בשימוש: הכל )ספרים ומחברות( המלצות: קרא המלצות לפני הבחינה ובדיקות אחרונות לפני מסירה )עמודים 8-11( מבנה השאלון 5

More information

תרגול 11 תור עץ חיפוש בינארי

תרגול 11 תור עץ חיפוש בינארי 2018 מבוא למדעי המחשב תרגול 11 תור עץ חיפוש בינארי ראינו בהרצאות מבני נתונים נוספים עצים בינאריים עצי חיפוש בינאריים תור מחסנית נראה בתרגול מבני נתונים חדשים תור ממשק + מימוש + שאלה עץ חיפוש בינארי תזכורת

More information

פעולות קלט פלט Streams( )I\O

פעולות קלט פלט Streams( )I\O 1 פעולות קלט פלט Streams( )I\O הקדמה היררכיית מחלקות ה- I\O Java המחלקות האבסטרקטיות InputStream ו- OutputStream המחלקות FileInputStream ו- FileOutputStream המחלקות ObjectInputStream ו- ObjectOutputStream

More information

Reflection Session: Sustainability and Me

Reflection Session: Sustainability and Me Goals: Participants will: identify needs in their home communities apply their sustainability learning to the conditions of their home communities design a sustainable project idea and evaluate the ideas

More information

A R E Y O U R E A L L Y A W A K E?

A R E Y O U R E A L L Y A W A K E? A R E Y O U R E A L L Y A W A K E? ב ר ו ך א ת ה י י א לה ינ ו מ ל ך ה עו ל ם, ה מ ע ב יר ש נ ה מ ע ינ י ות נ ומ ה מ ע פ ע פ י Blessed are You, Hashem our God, King of the Universe, who removes sleep from

More information

Redirection The Input Buffer

Redirection The Input Buffer מבוא לשפת C תירגול 3: טיפוסים והמרות 1 מה היה שבוע שעבר? משתנים קלט/פלט scanf) ו- printf ) Redirection The Input Buffer 2 תוכנייה טיפוסי משתנים קלט/פלט מעוצב המרה בין טיפוסים 3 חישוב ממוצע בין שני מספרים

More information

2007 Zindell Technologies, Ltd.

2007 Zindell Technologies, Ltd. 1 הורשה )Inheritance( הקדמה Derivation Syntax אופן הגדרתה של מחלקה שיורשת מאחרת - משמעות ההורשה - Effects Inheritance הרשאות הגישה Modifiers Access הגדרתן מחדש של מתודות שהגיעו בהורשה - Methods Overriding

More information

הקיטסיגול הרבחה יעדמל בלושמה גוחה

הקיטסיגול הרבחה יעדמל בלושמה גוחה ניהול מערכות תובלה ושינוע זרימה ברשת עץ פורס מינימאלי Minimal Spanning Tree הבעיה: מציאת חיבור בין כל קודקודי גרף במינימום עלות שימושים: פריסת תשתית אלגוריתם חמדן (Greedy) Kruskal(1956) Prim(1957) השוואה

More information

א נ ג ל י ת בהצלחה! ב. משרד החינוך בגרות לנבחנים אקסטרניים )מילון הראפס אנגלי-אנגלי-ערבי( השימוש במילון אחר טעון אישור הפיקוח על הוראת האנגלית.

א נ ג ל י ת בהצלחה! ב. משרד החינוך בגרות לנבחנים אקסטרניים )מילון הראפס אנגלי-אנגלי-ערבי( השימוש במילון אחר טעון אישור הפיקוח על הוראת האנגלית. בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. א. משך הבחינה: שעה ורבע מועד הבחינה: חורף תשס"ז, 2007 מספר השאלון: 406 016107, א נ ג ל י

More information

Structural Vs. Nominal Typing

Structural Vs. Nominal Typing שפות תכנות 234319 פרופ' יוסי גיל הפקולטה למדעי המחשב, הטכניון מכון טכנולוגי לישראל קיץ 2013 הרצאה מס' 6: טיפוסיות שמית ומבנית רשמה: איריס קלקה kalka.iris@gmail.com בשלב זה בקורס אנו עוסקים בתורת הטיפוסים.

More information

ב. משרד החינוך בגרות לנבחנים אקסטרניים א נ ג ל י ת (MODULE B) הוראות מיוחדות: )2( בתום הבחינה החזר את השאלון למשגיח. בהצלחה!

ב. משרד החינוך בגרות לנבחנים אקסטרניים א נ ג ל י ת (MODULE B) הוראות מיוחדות: )2( בתום הבחינה החזר את השאלון למשגיח. בהצלחה! בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. חורף תשס"ח, 2008 מועד הבחינה: מספר השאלון: 402 016103, א. משך הבחינה: שעה ורבע א נ ג ל י

More information

FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 102 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 5

FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 102 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 5 FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO. 652082/2014 NYSCEF DOC. NO. 102 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 5 McLaughlin, Terence K. From: Sent: To: Cc: Subject: Follow Up Flag: Flag Status:

More information

מבחן מועד ב' אנא קיראו היטב את ההראות שלהלן:

מבחן מועד ב' אנא קיראו היטב את ההראות שלהלן: מבחן מועד ב' תאריך הבחינה: 3.3.2015 שמות המרצים: דר' רועי זיון פרופ' משה זיפר פרופ' מיכאל קודיש דר' צחי רוזן גב' מיכל שמש שם הקורס: מבוא למדעי המחשב אנא קיראו היטב את ההראות שלהלן: מספר הקורס: 202-1-1011

More information

THINKING ABOUT REST THE ORIGIN OF SHABBOS

THINKING ABOUT REST THE ORIGIN OF SHABBOS Exploring SHABBOS SHABBOS REST AND RETURN Shabbos has a multitude of components which provide meaning and purpose to our lives. We will try to figure out the goal of Shabbos, how to connect to it, and

More information

תאריך הבחינה: מבוא למדעי המחשב ד "ר פז כרמי פרופ' מייק קודיש ד "ר חן קיסר ד "ר צחי רוזן שם הקורס: מבוא למדעי המחשב מספר הקורס:

תאריך הבחינה: מבוא למדעי המחשב ד ר פז כרמי פרופ' מייק קודיש ד ר חן קיסר ד ר צחי רוזן שם הקורס: מבוא למדעי המחשב מספר הקורס: מבוא למדעי המחשב 202-1-1011 מבחן אנא קראו את ההוראות שלהלן בעיון: תאריך הבחינה: 622011 שמות המרצים: מר שי זקוב ד "ר פז כרמי פרופ' מייק קודיש ד "ר חן קיסר ד "ר צחי רוזן שם הקורס: מבוא למדעי המחשב מספר הקורס:

More information

סיכומים למבחן בקומפילציה

סיכומים למבחן בקומפילציה ד( מושגים בסיסיים: מהדר (cmpiler) מול מפרש :(interpreter) קלט תוכנית קלט עליו צריך להריץ את התוכנית 1 סיכומים למבחן בקומפילציה סמסטר א' תש"ע 2010 "ר רינה צביאל-גירשין) Cmpiler מתרגם את התוכנית לקובץ executable

More information

מדריך לתכנת הגימפ Gimp) (The חלק מהמידע במדריך זה מובא מהקישור- http://www.jlc.org.il/forums/viewtopic.php?p=900&sid=d801ea3d13f7ae97549e28a56a4ce0cb GIMP היאתכנה חופשיתרבתאפשרויותבתחום הגראפיקהועריכתהתמונות,

More information

ל"תוכנה" שכותבים, כמו פונקציה זו, קוראים "קוד"

לתוכנה שכותבים, כמו פונקציה זו, קוראים קוד הגדרת פונקציות מבוא לתכנות מדעי וסטטיסטי R פונקציות, ו חלק 4 בנוסף לפונקציות שמגיעות מוכנות יחד עם המערכת exp) mean,,c וכו'), אפשר לכתוב פונקציות חדשות פונקציות נקראות לעתים "פרוצדורות" או "סאב-רוטינות"

More information

FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 134 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 37

FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO /2014 NYSCEF DOC. NO. 134 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 37 FILED: NEW YORK COUNTY CLERK 07/16/2014 INDEX NO. 652082/2014 NYSCEF DOC. NO. 134 RECEIVED NYSCEF: 07/16/2014 EXHIBIT 37 Translated from the Hebrew Sharf Translations Message sent From: Tomer Shohat

More information

תכנות בטוח חלק ב ' מאת עידו קנר

תכנות בטוח חלק ב ' מאת עידו קנר תכנות בטוח חלק ב' מאת עידו קנר הקדמה מאמר זה הינו חלק ההמשך של המאמר העוסק בנושא "התכנות הבטוח" אשר פורסם בגליון השביעי של.Digital Whisper בחלק הקודם הצגתי מקרים מאוד פשוטים וברורים אודות כמה מגישות בתכנות

More information

זו מערכת ישרת זוית )קרטזית( אשר בה יש לנו 2 צירים מאונכים זה לזה. באותו מישור ניתן להגדיר נקודה על ידי זוית ורדיוס וקטור

זו מערכת ישרת זוית )קרטזית( אשר בה יש לנו 2 צירים מאונכים זה לזה. באותו מישור ניתן להגדיר נקודה על ידי זוית ורדיוס וקטור קארדינטת קטבית y p p p במישר,y הגדרנ נקדה על ידי המרחקים מהצירים. ז מערכת ישרת זית )קרטזית( אשר בה יש לנ צירים מאנכים זה לזה. באת מישר ניתן להגדיר נקדה על ידי זית רדיס קטר. (, ) הרדיס קטר מסתבב )נגד כין

More information

3. class attr_accessor def end 9. end puts "

3. class attr_accessor def end 9. end puts 1. #!/usr/bin/env ruby 2. 3. class Ruby 4. attr_accessor :programming_language 5. 6. def to_s 7. @programming_language 8. 9. 10. 11. rb = Ruby.new 12. rb.programming_language = "ruby" 13. 14. puts rb.to_s

More information

ב. משרד החינוך בגרות לנבחנים אקסטרניים א נ ג ל י ת (MODULE B) הוראות מיוחדות: )2( בתום הבחינה החזר את השאלון למשגיח. בהצלחה!

ב. משרד החינוך בגרות לנבחנים אקסטרניים א נ ג ל י ת (MODULE B) הוראות מיוחדות: )2( בתום הבחינה החזר את השאלון למשגיח. בהצלחה! בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. תשס"ז, מועד ב מועד הבחינה: מספר השאלון: 402 016103, א. משך הבחינה: שעה ורבע א נ ג ל י ת

More information

ANNEXURE "E1-1" FORM OF IRREVOCABLE STANDBY LETTER OF CREDIT PERFORMANCE OF CONTRACT (WHERE PRICES ARE NOT LINKED TO AN ESCALATION FORMULA)

ANNEXURE E1-1 FORM OF IRREVOCABLE STANDBY LETTER OF CREDIT PERFORMANCE OF CONTRACT (WHERE PRICES ARE NOT LINKED TO AN ESCALATION FORMULA) ANNEXURE "E1-1" FORM OF IRREVOCABLE STANDBY LETTER OF CREDIT PERFORMANCE OF CONTRACT (WHERE PRICES ARE NOT LINKED TO AN ESCALATION FORMULA) Dear Sirs, Re: Standby Letter of Credit No: Please advise the

More information

שאלון ו' הוראות לנבחן

שאלון ו' הוראות לנבחן סוג הבחינה: א. בגרות לבתי ספר על- יסודיים ב. בגרות לנבחני משנה ג. בגרות לנבחנים אקסטרניים מועד הבחינה: תשס"ו, מועד ב מספר השאלון: 406 016107, י ת ל ג נ א שאלון ו' )MODULE F( הוראות לנבחן א. משך הבחינה:

More information

שאלון ו' הוראות לנבחן

שאלון ו' הוראות לנבחן סוג הבחינה: א. בגרות לבתי ספר על- יסודיים ב. בגרות לנבחני משנה ג. בגרות לנבחנים אקסטרניים מועד הבחינה: תשס"ה, מועד ב מספר השאלון: 406 016107, י ת ל ג נ א שאלון ו' )MODULE F( הוראות לנבחן א. משך הבחינה:

More information

אנגלית (MODULE E) בהצלחה!

אנגלית (MODULE E) בהצלחה! 3 בגרות סוג הבחינה: מדינת ישראל חורף תשע"ט, 2019 מועד הבחינה: משרד החינוך 016481 מספר השאלון: א. משך הבחינה: שעה ורבע אנגלית שאלון ה' (MODULE E) ג רסה א' הוראות לנבחן מבנה השאלון ומפתח ההערכה: בשאלון זה

More information

מבוא למחשב בשפת Matlab

מבוא למחשב בשפת Matlab מבוא למחשב בשפת Matlab תרגול 10: רקורסיה מבוסס על שקפי הקורס "מבוא למדעי המחשב" ובסיוע שקפים של ערן אדן כל הזכויות שמורות לטכניון מכון טכנולוגי לישראל תזכורת: פונקציות להלן קוד של פונקציה בשם :func function

More information

אנגלית שאלון ז' (MODULE G) ג רסה א' הוראות לנבחן )מילון אנגלי-ערבי / ערבי-אנגלי )

אנגלית שאלון ז' (MODULE G) ג רסה א' הוראות לנבחן )מילון אנגלי-ערבי / ערבי-אנגלי ) בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. חורף תשע"ג, 2013 מועד הבחינה: 407 016108, מספר השאלון: הצעת תשובות לשאלות בחינת הבגרות אנגלית

More information

Depth-First Search DFS

Depth-First Search DFS Depth-First Search DFS (Depth-First Search) DFS חיפוש לרוחב חיפ וש לעומק (DFS) הוא אלג וריתם לסרי קת הגרפים. פועל גם על גרפים מ כוו נים וגם על בלתי מ כוו נים בהינתן גרף,G=(V,E) אלגוריתם DFS מבקר בכל הצמתים

More information

שאלון ד' הוראות לנבחן

שאלון ד' הוראות לנבחן סוג הבחינה: א. בגרות לבתי ספר על- יסודיים ב. בגרות לנבחני משנה ג. בגרות לנבחנים אקסטרניים מועד הבחינה: תשס"ה, מועד ב מספר השאלון: 404 016105, י ת ל ג נ א שאלון ד' )MODULE D( הוראות לנבחן א. משך הבחינה:

More information

A JEW WALKS INTO A BAR: JEWISH IDENTITY IN NOT SUCH JEWISH PLACES

A JEW WALKS INTO A BAR: JEWISH IDENTITY IN NOT SUCH JEWISH PLACES A JEW WALKS INTO A BAR: JEWISH IDENTITY IN NOT SUCH JEWISH PLACES Sinning in Disguise Like people of all faiths, Jews sometimes do things or go to places they are not supposed to. This session is not about

More information

מדעי המחשב מעבר על הרשימה למציאת המקום המתאים לאיבר. החזרת ה- value של ההפניה למינימום. הנחה: הרשימה לא ריקה.

מדעי המחשב מעבר על הרשימה למציאת המקום המתאים לאיבר. החזרת ה- value של ההפניה למינימום. הנחה: הרשימה לא ריקה. מדעי המחשב ב' פרק - ראשון מבני נתונים שאלה א. ייצוג: 1 O(n) פעולות הוספה ו-האם-קיים ב- O(n) פעולות הצג-מינימום ו- הוצא-מקסימום ב- (1)O רשימה דו-כיוונית ממוינת )בסדר עולה או יורד( )בגודל n( הפנייה לאיבר

More information

התכנית הראשונה שלי

התכנית הראשונה שלי 2-1 מבנה התכנית התכנית הראשונה שלי מחלקה מגדירה עצם. עצמים מתקשרים ביניהם באמצעות תכנית מ נ ח ה. בפרקים הבאים נכיר תחילה את המנחה ואת הוראות השפה, ובהמשך נלמד לשלב גם עצמים. לפניך תכנית בשפת.Java התכנית

More information

אנגלית ספרות בהצלחה! /המשך מעבר לדף/ נספח: כישורי חשיבה )לפרק ראשון ושני( או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי

אנגלית ספרות בהצלחה! /המשך מעבר לדף/ נספח: כישורי חשיבה )לפרק ראשון ושני( או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. קיץ תשע"ד, מועד ב, 2014 מועד הבחינה: מספר השאלון: 414 016115, Thinking Skills נספח: כישורי

More information

מספר השאלון: Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( א נ ג ל י ת (MODULE F) ספרות )מילון הראפס אנגלי-אנגלי-ערבי(

מספר השאלון: Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( א נ ג ל י ת (MODULE F) ספרות )מילון הראפס אנגלי-אנגלי-ערבי( בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"א, 2011 מועד הבחינה: משרד החינוך 016117 מספר השאלון: Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( א נ ג ל י ת א. משך הבחינה: שעה וחצי שאלון

More information

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE F) ספרות או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE F) ספרות או: מילון אנגלי-ערבי / ערבי-אנגלי או: מילון אנגלי-אנגלי-ערבי בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. קיץ תשע"ד, מועד ב, 2014 מועד הבחינה: מספר השאלון: 416 016117, Thinking Skills נספח: כישורי

More information

Design Patterns מאיר סלע מהדורה ראשונה 2004 הדפסה 1 כל הזכויות שמורות

Design Patterns מאיר סלע מהדורה ראשונה 2004 הדפסה 1 כל הזכויות שמורות Design Patterns 4 Design Patterns מאיר סלע מהדורה ראשונה 2004 הדפסה 1 כל הזכויות שמורות מרכז ההדרכה עיטם 2000 אתר אינטרנט: www.mh2000.co.il דואר אלקטרוני: info@mh2000.co.il אין להעתיק, לשכפל או לצלם ספר

More information

אנגלית שאלון ז' ג רסה א' הוראות לנבחן בהצלחה! )4( ההנחיות בשאלון זה מנוסחות בלשון זכר ומכוונות לנבחנות ולנבחנים כאחד. (MODULE G)

אנגלית שאלון ז' ג רסה א' הוראות לנבחן בהצלחה! )4( ההנחיות בשאלון זה מנוסחות בלשון זכר ומכוונות לנבחנות ולנבחנים כאחד. (MODULE G) 3 בגרות סוג הבחינה: מדינת ישראל חורף תשע"ט, 2019 מועד הבחינה: משרד החינוך 016582 מספר השאלון: א. משך הבחינה: שעה וארבעים וחמש דקות אנגלית שאלון ז' (MODULE G) ג רסה א' הוראות לנבחן מבנה השאלון ומפתח ההערכה:

More information

הטכנולוגיה בחינוך ד ר קובי גל אוניברסיטת בן גוריון בנגב

הטכנולוגיה בחינוך ד ר קובי גל אוניברסיטת בן גוריון בנגב בינה מלאכותית ומהפיכת הטכנולוגיה בחינוך ד ר קובי גל אוניברסיטת בן גוריון בנגב מעבדות -אתמול ד"ר קובי גל מעבדות -היום ד"ר קובי גל למידה בקבוצות -אתמול ד"ר קובי גל למידה בקבוצות -היום ד"ר קובי גל הזדמנות

More information

interface Student {tag: Student, name: string; age: number;} const makestudent = ( name: string, age: number ) : Student =>

interface Student {tag: Student, name: string; age: number;} const makestudent = ( name: string, age: number ) : Student => תאריך 23.07.2018 שם המרצים: מני אדלר, מיכאל אלחדד, ירון גונן מבחן בקורס: עקרונות שפות תכנות קורס' מס: 202-1-2051 מיועד לתלמידי: מדעי המחשב והנדסת תוכנה שנה: ב' סמסטר: ב' מועד ב' משך הבוחן: 3 שעות חומר

More information

גירסה C++ Tutorial Nir Adar עמוד 1

גירסה C++ Tutorial Nir Adar     עמוד 1 גירסה 2.00 4.10.2004 C++ Tutorial מסמך זה הורד מהאתר. אין להפיץ מסמך זה במדיה כלשהי, ללא אישור מפורש מאת המחבר. מחבר המסמך איננו אחראי לכל נזק, ישיר או עקיף, שיגרם עקב השימוש במידע המופיע במסמך, וכן לנכונות

More information

Computer Structure. Exercise #1 יש להגיש את התשובות הסופיות על גבי טופס זה.

Computer Structure. Exercise #1 יש להגיש את התשובות הסופיות על גבי טופס זה. שם: ת.ז: ציון: Computer Structure Exercise #1 יש להגיש את התשובות הסופיות על גבי טופס זה. שאלה 1 appleממש מערכת אשר קולטת בכל מחזור שעון ביט קלט בודדX. כדי להגדיר את הפלט של המערכת במחזור השעון הappleוכחי

More information

קורס מטלב לפיסיקאים שיעור מס' 10: משתנים מורכבים

קורס מטלב לפיסיקאים שיעור מס' 10: משתנים מורכבים שיעור מס' : משתנים מורכבים מערכי תאים מערך תאים הוא מערך שבו כל איבר בעצמו הוא מערך מסוג ומימדים כלשהם. לדוגמא מערך עמודה: מס' איבר 2 3 4 5 תוכן סקלר נומרי סקלר לוגי מטריצה נומרית 2 3 6 מערך-תאים (שורה

More information

(MODULE E) ב ה צ ל ח ה!

(MODULE E) ב ה צ ל ח ה! סוג הבחינה: א. בגרות לבתי ספר על- יסודיים ב. בגרות לנבחני משנה מועד הבחינה: קיץ תשס"ד, 2004 מספר השאלון: 016106 י ת ל ג נ א שאלון ה' (MODULE E) הוראות לנבחן א. משך הבחינה: שעה ורבע בשאלון זה שני פרקים.

More information

פרק מחלקות ממשק המחלקה צריך גם לדעת להגדיר בתוכניתו מחלקות לפי הצורך. בפרק זה נלמד להגדיר מחלקה ולממשה על סמך ממשק נתון.

פרק מחלקות ממשק המחלקה צריך גם לדעת להגדיר בתוכניתו מחלקות לפי הצורך. בפרק זה נלמד להגדיר מחלקה ולממשה על סמך ממשק נתון. - 37-3 פרק מחלקות ובנייה הגדרה בפרק הקודם ראינו כיצד ניתן להשתמש במחלקות קיימות על מנת ליצור עצמים, צריך גם לדעת להגדיר בתוכניתו מחלקות לפי הצורך. אך מתכנת בפרק זה נלמד להגדיר מחלקה ולממשה על סמך ממשק

More information

תוכנה 1 תרגיל מספר 11

תוכנה 1 תרגיל מספר 11 הנחיות כלליות: תוכנה 1 תרגיל מספר 11 קראו בעיון את קובץ נוהלי הגשת התרגילים אשר נמצא באתר הקורס. הגשת התרגיל תעשה במערכת ה VirtualTAU בלבד.(http://virtual2002.tau.ac.il/) יש להגיש קובץ zip יחיד הנושא את

More information

בהצלחה! (MODULE C) Hoffman, Y. (2014). The Universal English-Hebrew, Hebrew-English Dictionary

בהצלחה! (MODULE C) Hoffman, Y. (2014). The Universal English-Hebrew, Hebrew-English Dictionary בגרות סוג הבחינה: מדינת ישראל קיץ תשע"ז, 2017, מועד ב מועד הבחינה: משרד החינוך 403 016104, מספר השאלון: אנגלית שאלון ג' (MODULE C) ג רסה א' הוראות לנבחן א. משך הבחינה: שעה וחצי ב. מבנה השאלון ומפתח ההערכה:

More information

םימתירוגלאו םינותנ ינבמ המירעו תינס, חמ רות רקצול הנילופ

םימתירוגלאו םינותנ ינבמ המירעו תינס, חמ רות רקצול הנילופ תור,מחסנית פולינה לוצקר וערימה מבני נתונים ואלגוריתמים מנהלות מרצה הקורס: פרופסור יורם לוזון פולינה מתרגלת: לוצקר אימייל: polinalutbiu@gmail.com, שעות קבלה: 13:00-15:00 יום שני בתיאום מראש. אתר הקורס:

More information

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות או מילון אנגלי-עברי-עברי-אנגלי

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות או מילון אנגלי-עברי-עברי-אנגלי בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"ג, 2013 מועד הבחינה: משרד החינוך מספר השאלון: 016115 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית שאלון ד' (MODULE D) א. משך הבחינה:

More information

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE F) ספרות מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE F) ספרות מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"ב, מועד ב מועד הבחינה: משרד החינוך מספר השאלון: 016117 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( א. משך הבחינה: שעה וחצי אנגלית שאלון

More information

תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך א נ ג ל י ת שאלון א' Corresponds with Module A (Without Access to Information from Spoken Texts) גרסה א'

תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך א נ ג ל י ת שאלון א' Corresponds with Module A (Without Access to Information from Spoken Texts) גרסה א' תכנית סטארט עמותת יכולות, בשיתוף משרד החינוך מקום להדבקת מדבקת נבחן א נ ג ל י ת סוג בחינה: מועד הבחינה: מספר השאלון: מבחן מטה לבתי ספר תיכוניים חורף תשע"ד 29.01.2014 מותאם לשאלון א' של בחינת הבגרות שסמלו

More information

The Connection between Town Planning, Public Taking (Appropriation) and Land Appraisal

The Connection between Town Planning, Public Taking (Appropriation) and Land Appraisal The Connection between Town Planning, Public Taking (Appropriation) and Land Appraisal Adv. Shahar HARARI, Israel Key words: Town Planning, Appropriation, Appraisal SUMMARY It seems illogical that the

More information

בהצלחה מועד א אנא קראו היטב את ההוראות שלהלן: תאריך המבחן: 9/7/2017 המרצים: ד"ר צחי רוזן מר דן בורנשטיין מר ניר גלעד

בהצלחה מועד א אנא קראו היטב את ההוראות שלהלן: תאריך המבחן: 9/7/2017 המרצים: דר צחי רוזן מר דן בורנשטיין מר ניר גלעד תאריך המבחן: 9/7/2017 המרצים: ד"ר צחי רוזן מר דן בורנשטיין מר ניר גלעד מועד א אנא קראו היטב את ההוראות שלהלן: שם הקורס: מבוא למדעי המחשב מספר הקורס: 202-1-1011 שנה: 2017 סמסטר: ב מועד: א משך המבחן: שלוש

More information

1.1. הקדמה (דיסק). מדריכי. (מחיצות) Link

1.1. הקדמה (דיסק). מדריכי. (מחיצות) Link חוג למדעי מחשב מבנה מערכות הפעלה תרגול 7 תרגול מס' 7 נושא התרגיל: מערכת קבצי. בUNIX3 בתרגיל זה נלמד: מבנה מערכת הקבצי. על הדיסק מבנה הInode3 סוגי הקבצי. בUNIX3 ניהול הדיסק 1. מערכת הקבצי! 1.1. הקדמה לכל

More information

מבוא לרשתות - תרגול מס' 11 Transparent Bridges

מבוא לרשתות - תרגול מס' 11 Transparent Bridges מבוא לרשתות - תרגול מס' 11 Transparent Bridges גשרים: מוטיבציה המטרה: חיבור של כמה רשתות מקומיות ) LAN -ים( לרשת מורחבת אחת על מנת לאפשר תקשורת בין מחשבים שאינם מחוברים לאותה רשת מקומית.?)ports עם מס'

More information

יסודות מבני נתונים. תרגול :9 ערימה - Heap

יסודות מבני נתונים. תרגול :9 ערימה - Heap יסודות מבני נתונים תרגול :9 ערימה - Heap maximum שאלה: כמה זמן לוקח לחפש איבר בערימה? תשובה:,O(n) למרות שבערימה קיים סדר מסויים. Heaps 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 דוגמה: 7 11 13 21 12 17 20 34

More information

ובתוכנה 1 א 2004) ( סמסטר א' תשס"ז מועד ב', 8 באוקטובר 2007

ובתוכנה 1 א 2004) ( סמסטר א' תשסז מועד ב', 8 באוקטובר 2007 עמוד 1 מתוך 14 בחינה בתוכנה 2157) 1 (368 - ובתוכנה 1 א 24) (368 - סיון טולדו, אוהד ברזילי, מיכל עוזרי-פלאטו, ליאור שפירא סמסטר א' תשס"ז מועד ב', 8 באוקטובר 27 משך הבחינה שלוש שעות. יש לענות על כל השאלות.

More information

בחינת בגרות, תשע"ז מס' שאלון: מדעי המחשב שאלה 1. Java. blog.csit.org.il הילה קדמן

בחינת בגרות, תשעז מס' שאלון: מדעי המחשב שאלה 1. Java. blog.csit.org.il הילה קדמן מדעי המחשב פרק ראשון Jv שאלה 1 C# עמוד 1 Jv שאלה 2 C# עמוד 2 שאלה 3 1 2 3 5 7 11 13 3 א. הפלט עבור = 15 n עמוד מטרת הפעולה: הכברה של ארתוסטנס חישוב והדפסת כל המספרים הראשוניים עד n. )כברה = מסננת( )הפעולה

More information

מספר השאלון: הצעת תשובות לשאלות בחינת הבגרות אנגלית (MODULE C) מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי قاموس إنجليزي - إنجليزي - عربي

מספר השאלון: הצעת תשובות לשאלות בחינת הבגרות אנגלית (MODULE C) מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי قاموس إنجليزي - إنجليزي - عربي בגרות לבתי ספר על יסודיים א. סוג הבחינה: מדינת ישראל בגרות לנבחני משנה ב. משרד החינוך בגרות לנבחנים אקסטרניים ג. חורף תשע"ג, 2013 מועד הבחינה: 403 016104, מספר השאלון: הצעת תשובות לשאלות בחינת הבגרות אנגלית

More information

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות מילון אנגלי-אנגלי-עברי או מילון אנגלי-עברי-עברי-אנגלי בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"ב, מועד ב מועד הבחינה: משרד החינוך מספר השאלון: 016115 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית שאלון ד' (MODULE D) א. משך הבחינה:

More information

זה. Nir Adar

זה. Nir Adar גירסה 28.4.2003-1.00 האסמבלי של 8086 חלק שני מסמך זה הורד מהאתר. אין להפיץ מסמך זה במדיה כלשהי, ללא אישור מפורש מאת המחבר. מחבר המסמך איננו אחראי לכל נזק, ישיר או עקיף, שיגרם עקב השימוש במידע המופיע במסמך,

More information

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0

מבוא לתכנות - פיתוח משחקים ב Action Script 3.0 מבוא לתכנות - פיתוח משחקים ב Action Script 3.0 כל מה שמעצב משחקים צריך לדעת בשביל לעבוד עם מתכנתים תנועה בעזרת קוד שעור 9 הישגיים 2 1P 0 AS3 2P 0 HIGH SCORE RANK SCORE NAME CREDIT 15 1ST 00472000 G.F 2ND

More information

Visual C# Express Edition 2005

Visual C# Express Edition 2005 1 הכרות עם Visual C# Express Edition 2005 C# מדריך מצולם להתקנה ועבודה ראשונית עם Express ארז קלר www.coner.co.il 2 C# Express מייקרוסופט פיתחה סדרת כלי פיתוח חינמיים עבור סטודנטים,תלמידים ומפתחים חובבים.

More information

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות או מילון אנגלי-עברי-עברי-אנגלי

נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית (MODULE D) ספרות או מילון אנגלי-עברי-עברי-אנגלי בגרות לבתי ספר על יסודיים סוג הבחינה: מדינת ישראל קיץ תשע"ב, 2012 מועד הבחינה: משרד החינוך מספר השאלון: 016115 Thinking Skills נספח: כישורי חשיבה )לפרק ראשון ושני( אנגלית שאלון ד' (MODULE D) א. משך הבחינה:

More information

פרק מחלקות ממשק המחלקה צריך גם לדעת להגדיר בתוכניתו מחלקות לפי הצורך. בפרק זה נלמד להגדיר מחלקה ולממשה על סמך ממשק נתון.

פרק מחלקות ממשק המחלקה צריך גם לדעת להגדיר בתוכניתו מחלקות לפי הצורך. בפרק זה נלמד להגדיר מחלקה ולממשה על סמך ממשק נתון. - 37-3 פרק מחלקות ובנייה הגדרה בפרק הקודם ראינו כיצד ניתן להשתמש במחלקות קיימות על מנת ליצור עצמים, צריך גם לדעת להגדיר בתוכניתו מחלקות לפי הצורך. אך מתכנת בפרק זה נלמד להגדיר מחלקה ולממשה על סמך ממשק

More information